package com.liujun.io.nio.mysql.protocol.inf;

import java.nio.ByteBuffer;
import java.util.Map;

import com.liujun.io.nio.mysql.bean.protocol.PackageHeader;

/**
 * 数据转换接口
* 源文件名：DataParseInf.java
* 文件版本：1.0.0
* 创建作者：liujun
* 创建日期：2016年12月9日
* 修改作者：liujun
* 修改日期：2016年12月9日
* 文件描述：TODO
* 版权所有：Copyright 2016 zjhz, Inc. All Rights Reserved.
*/
public interface DataParseInf<T extends PackageHeader> {

    /**
     * 将协议数据转换为javaBean信息
    * 方法描述
    * @param buffer
    * @return
    * @创建日期 2016年12月9日
    */
    public T readPackage(ByteBuffer buffer);

    /**
     * 得到数据写入的package
    * 方法描述
    * @param buffer
    * @创建日期 2016年12月9日
    */
    public ByteBuffer getWriteToPackage(Map<String, Object> param);

    /**
     * 获取数据包大小
    * 方法描述
    * @return
    * @创建日期 2016年12月9日
    */
    public int getpackageSize();

}
